package dreamdancetiktokenumsmymongo

const (
	DanceRoomModelMarryMarryStatusOrderMarry       = 0 //订婚
	DanceRoomModelMarryMarryStatusCancelOrderMarry = 1 //取消订婚
	DanceRoomModelMarryMarryStatusMarried          = 2 //结婚状态
	DanceRoomModelMarryMarryStatusDivorceMarry     = 3 //离婚

	DanceRoomModelMarryMarryDoTypeAuto  = 0 //0:系统自动;1:管理后台;
	DanceRoomModelMarryMarryDoTypeAdmin = 1 //0:系统自动;1:管理后台;
)

type DanceRoomModelMarryEnums struct {
}

var DanceRoomModelMarryEnumsObject DanceRoomModelMarryEnums

func (e DanceRoomModelMarryEnums) MarryStatus() []int {
	return []int{
		DanceRoomModelMarryMarryStatusOrderMarry,
		DanceRoomModelMarryMarryStatusCancelOrderMarry,
		DanceRoomModelMarryMarryStatusMarried,
		DanceRoomModelMarryMarryStatusDivorceMarry,
	}
}

func (e DanceRoomModelMarryEnums) MarryStatusMap() map[int]int {
	m := make(map[int]int)
	for _, s := range e.MarryStatus() {
		m[s] = s
	}
	return m
}

func (e DanceRoomModelMarryEnums) MarryStatusString(tag int) string {
	switch tag {
	case DanceRoomModelMarryMarryStatusOrderMarry:
		return "订婚"
	case DanceRoomModelMarryMarryStatusCancelOrderMarry:
		return "取消订婚"
	case DanceRoomModelMarryMarryStatusMarried:
		return "结婚状态"
	case DanceRoomModelMarryMarryStatusDivorceMarry:
		return "离婚"
	default:
		return "未知"
	}
}

func (e DanceRoomModelMarryEnums) MarryDoType() []int {
	return []int{
		DanceRoomModelMarryMarryDoTypeAuto,
		DanceRoomModelMarryMarryDoTypeAdmin,
	}
}

func (e DanceRoomModelMarryEnums) MarryDoTypeMap() map[int]int {
	m := make(map[int]int)
	for _, s := range e.MarryDoType() {
		m[s] = s
	}
	return m
}

func (e DanceRoomModelMarryEnums) MarryDoTypeString(tag int) string {
	switch tag {
	case DanceRoomModelMarryMarryDoTypeAuto:
		return "自动"
	case DanceRoomModelMarryMarryDoTypeAdmin:
		return "后台操作"
	default:
		return "未知"
	}
}
